package cn.tedu.tmall.admin.mall.pojo.po;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;
import org.json.JSONStringer;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 数据层返回对象
 * PO里的属性是和数据库表字段一一对应的
 */
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
@TableName("mall_category")
public class CategoryPO implements Serializable {

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    Long id;

    /**
     * 类别名称
     */
    String name;

    /**
     * 关键词
     */
    String keywords;

    /**
     * 排序
     */
    Integer sort;

    /**
     * 是否启用 1启用 0 未启用
     */
    Integer enable;

    /**
     * 是否在导航栏显示
     */
    Integer isDisplay;

    /**
     * 父类别id ,如果无父级,为0
     */
    Long parentId;


    /**
     * 深度
     */
    Integer depth;


    /**
     * 是否为父级(是否包含子级)
     * 1 是父级 0 不是父级
     */
    Integer isParent;


    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    LocalDateTime gmtCreate;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    LocalDateTime gmtModified;

    @Override
    public String toString() {
        return "CategoryPO{" +
                "name='" + name + '\'' +
                '}';
    }
}
